home *** CD-ROM | disk | FTP | other *** search
- #ifndef __LINUX_IF_PACKET_H
- #define __LINUX_IF_PACKET_H
-
- struct sockaddr_pkt
- {
- unsigned short spkt_family;
- unsigned char spkt_device[14];
- unsigned short spkt_protocol;
- };
-
- struct sockaddr_ll
- {
- unsigned short sll_family;
- unsigned short sll_protocol;
- int sll_ifindex;
- unsigned short sll_hatype;
- unsigned char sll_pkttype;
- unsigned char sll_halen;
- unsigned char sll_addr[8];
- };
-
- /* Packet types */
-
- #define PACKET_HOST 0 /* To us */
- #define PACKET_BROADCAST 1 /* To all */
- #define PACKET_MULTICAST 2 /* To group */
- #define PACKET_OTHERHOST 3 /* To someone else */
- #define PACKET_OUTGOING 4 /* Outgoing of any type */
- /* These ones are invisible by user level */
- #define PACKET_LOOPBACK 5 /* MC/BRD frame looped back */
- #define PACKET_FASTROUTE 6 /* Fastrouted frame */
-
- /* Packet socket options */
-
- #define PACKET_ADD_MEMBERSHIP 1
- #define PACKET_DROP_MEMBERSHIP 2
-
- struct packet_mreq
- {
- int mr_ifindex;
- unsigned short mr_type;
- unsigned short mr_alen;
- unsigned char mr_address[8];
- };
-
- #define PACKET_MR_MULTICAST 0
- #define PACKET_MR_PROMISC 1
- #define PACKET_MR_ALLMULTI 2
-
- #endif
-